**Final project report** (#) Elsie Wang (f006zjp) (#) 1. Introduction (##) Motivational image
As a movie fan I want to create something that fit into my interest. "Reflection on time" reminds me of old school Sci-fi films, to be more specific, like Blade Runner and 2001 Space Odessey. The first thing come to my mind is large empty space with dust in the air that's blocking all the views. With that image in my mind, I referenced film screen shots as well as real life basement picture to create the old dusty look using volumetric ray tracing. (##) Feature implemented 1. Delta light sources (e.g. spot light, point light) 2. Intel open image Denoise 3. Parallel Rendering 4. Volmetric ray tracing (#) 2. Features (##) Delta light sources - add spot light and point light spot light
mesh-light spot-light
point light
mesh-light point-light
- code
(##) Intel open image Denoise - Include libaray in the project - create function to convert Image3f class to 1D array so the libaray can properly deal with our image data - Use Normal and Albedo integrators to produce better result
before-denoise after-denoise
- code
(##) Parallel Rendering - increased the rendering performance using multi threading, so ray could be sampled simultaneously - code
(##) Volumetric Ray Tracing - Implement volumetric ray tracing integrator with mats
I started the implemetation with mats and absorption only, which is to ignore the recursive volume interaction term. The scattering in medium is also implemented by scattering from surface and detect when the ray hits the mesh light. However, for my final render I decide to use delta light, thus move on to the inplementation of volumetric RT with NEE. - Implement volumetric ray tracing integrator with nee (supports delta light)
In this section, I had difficulty calculating monte carlos integrations for each photons. To make the recursive Le function more straight forward, I changed the strcture to one function that calculates the entire ray tracing cycle, thus makes it easier for me to calculate the accumulated transmittance in the medium as the ray traces. - Support homogeneous media - Implemented phase function absorb only
scene absorb
absorb & scatter
scene absorb
phase function g 0.35 vs g -0.65
scene absorb
(#) 3. Final image